aquí está mi json:
[ { "customer": "BigCo", "performances": [ { "playID": "hamlet", "audience": 55 }, { "playID": "as-like", "audience": 35 }, { "playID": "othello", "audience": 40 } ] } ]aquí está mi código (el entorno es node.js):
let readFile = require('fs').readFileSync let invoices = JSON.parse(readFile('./invoices.json', 'utf8')) console.log(invoices);aquí está mi resultado:
[ { customer: 'BigCo', performances: [ [Object], [Object], [Object] ] } ] He leído algunas preguntas relacionadas y obtuve algunas soluciones como invoices = invoices[0] o JSON.parse(JSON.stringify()) . Lo que realmente espero saber es la razón. ¿Por qué obtengo el resultado [ [Object], [Object], [Object] ] y qué parte causa el problema?
No soy un experto, pero la razón de esto es que son objetos anidados.
Primero debe convertir el contenido del archivo en una cadena y luego analizarlo en JSON.
Usa el siguiente código:
let readFile = require('fs').readFileSync let invoices = JSON.parse(readFile('./invoices.json', 'utf8').toString()) console.log(invoices[0]);la salida seria:
{ customer: 'BigCo', performances: [ { playID: 'hamlet', audience: 55 }, { playID: 'as-like', audience: 35 }, { playID: 'othello', audience: 40 } ] }